export default {
  // 添加商品进入购物车
  add_cart(state, item) {
    // state ==> 追加到 state中
    // item ==> {...}
    state.items.unshift(item)
  },
  // 删除购物车的某个商品
  del_item(state, index) {
    state.items.splice(index, 1)
  },
  // 步进器的方法
  set_items(state, items) {
    state.items = items; 
  },
  // 计算总价格
  set_total(state) {
    // 计算
    // 开发时为而生
    let total = 0
    // 先过滤没 ---》选中的才会算
    const items = state.items
    const checkedItems = items.filter((item) => item.isChecked)
    checkedItems.forEach((item) => {
      total += item.price * item.num;
    });
    state.total = total
  },
  // 全选按钮的方法
  set_allChecked(state, allChecked) {
    state.allChecked = allChecked; 
  },
  // 循环items ==》 动态设置item的选中状态
  set_checked(state,checked) {
    state.items.forEach((item) => {
      item.isChecked = checked;
    })
  },
  // 单选按钮的方法
  // 有且只有两个参数
  set_item_checked(state,{ index, checked }) {
    state.items[index].isChecked = checked
  }
}